Traditional measures used today for estimating the quality of a received signal comprise Signal-to-Noise-Ratio (SNR) estimates per burst, estimation of the Mean Signal-to-Noise-Ratio (E[SNR]) contributing to a given GSM (Global System for Mobile communications) frame/block, estimation of the Signal-to-Noise-Ratio variance (Var[SNR]) of bursts contributing to a given GSM frame/block, and Pseudo-Bit-Error-Rate (PBER) computation based on the received information bits.
The SNR measures listed above are highly dependent on modification and on changes in both the various RX (receiver) algorithms and in the actual HW (hardware) platform. For example, the PBER depends on the actual coding scheme which is a major disadvantage when several different coding schemes are used within a communications system.
Some communication systems transmit additional information which a receiver utilizes for the validation/estimation of the received signal quality; e.g. in GSM speech channels, three to eight additional bits (denoted parity bits) are transmitted along with the information bits. On GSM control channels, additional sixteen bits are transmitted. A Cyclic Redundancy Check (CRC) as defined by the 3GPP (3rd Generation Partnership Project) may then be carried out in the receiver on the basis of these parity bits in order to determine whether the received speech frame is good or bad.
However, a three-bit CRC of the GSM standard alone does not indicate erroneous frames reliably. Besides the CRC check additional measurements are therefore included in the Bad Frame Indication (BFI) algorithms in order to improve the reliability of the bad frame detection.
Bit error rate (BER) is a measurement of transmission quality and it indicates how many bits are incorrectly transmitted in a given bit stream. BER is a ratio of the number of bit errors to the total number of bits transmitted in a given time interval.
There are several alternatives, in addition to the CRC method, for designing BFI algorithms. An example of a Bad Frame Indication algorithm can be written as:(PBER>(BFIlim=WSNR·Var└S{circumflex over (N)}R┘+KSNR))  (1)or(E└S{circumflex over (N)}R┘<SNRmin)  (2)                or        !CRC        where:        PBER denotes a Pseudo-Bit-Error-Rate,        BFIlim computation is limited to the range BFImin<BFIlim<BFImax,        WSNR, KSNR, SNRmin, BFImin and BFImax are constants determined empirically through simulations. In an adaptive part of the BFI algorithm the BFIlim value is computed on a frame per frame basis as a function of the estimated frame Signal-to-Noise-Ratio variance (Var[SNR]). If the computed BFIlim value lies outside the specified BFIlim range, the value is set either to BFImin or BFImax. Examples of implemented BFI algorithm values are shown in table 1.        
TABLE 1WSNRKSNRBFIminBFImaxSNRmin20445065−0.2 dB
Thus, a given speech frame can be defined to be bad on the basis of three conditions: the PBER exceeds a frame specific threshold determined by the SNR variance of N bursts contributing to the speech frame, N representing an interleave depth; or the average Signal-to-Noise-Ratio (E[SNR]) of the N bursts contributing to the given speech frame does not exceed a predetermined SNR limit; or the Cyclic Redundancy Check (CRC) defined by the 3GPP is marked as failed.